package com.ruoyi.business.utils;

import org.springframework.stereotype.Component;

import java.util.Random;

/**
 * 内容:
 * 作者: cy
 */
@Component
public class SnUtil {


    Random random = new Random();


    /**
     * 生成单号的方法
     * 唯一
     * 最好携带时间戳  （可以回溯 可以根据时间戳反向计算出时间 ）
     * 最好单调递增 后面一个值比前面大即可 不是说大1位  （方便查询  时间复杂度降低 ）
     *
     * @param prefix
     * @return
     */
    public String createSn(String prefix) {
        // 前缀 + 时间戳 + 五位随机数
        long time = System.currentTimeMillis();
        int random = this.random.nextInt(90000) + 10000;
        return prefix + time + "_" + random;
    }

//    public static void main(String[] args) {
//        Random random = new Random();
//        for (int i = 0; i < 10; i++) {
//            int a = random.nextInt(90000) + 10000;
//            System.out.println(a);
//        }
//    }

}
